home *** CD-ROM | disk | FTP | other *** search
/ PC World 2006 February / PCWorld_2006-02_cd.bin / software / vyzkuste / tnt / tnt.exe / {app} / plugins / x-mouse.ttp < prev   
INI File  |  2005-03-17  |  2KB  |  84 lines

  1. [SETTINGS]
  2. category=Windows Tweaks::System::X-Mouse
  3. Caption=X-Mouse
  4. OSVERSION=2000,XP,2003
  5. version=1.0
  6. #=The 'Activation follows mouse (X-Mouse)' option if checked, gives focus to any window to which you point your mouse, but doesn't raise the window to the foreground unless you check the second option in this page.
  7. #=\nIf the 'Autoraise when activating' option is also checked, it brings the window that has focus to the foreground.
  8. #=\nActivation delay (ms). Specifies the delay (in milliseconds) before XP brings the window to which you pointed to the foreground.
  9.  
  10. #=\nNote: X-Mouse can be fun at first but annoying after a while. 
  11.  
  12. Author=
  13. GROUP=1
  14.  
  15. [INTERFACE]
  16. TYPE=multi
  17. Text0=Activation follows mouse (X-Mouse)
  18. type0=check
  19. Text1=Autoraise when activating
  20. type1=check
  21. Text2=Activation delay (ms)
  22. type2=spin
  23. style2=0,10000
  24.  
  25. [SCRIPT]
  26. Dim strkey3,strkey1
  27. strkey1="HKCU\Control Panel\Desktop\UserPreferencesMask"
  28. strkey3="HKCU\Control Panel\Desktop\ActiveWndTrkTimeout"
  29.  
  30. 'UserPreferencesMask is an example of a REG_DWORD value disguised as a REG_BINARY value. When you see a 32-bit binary value, chances are, it's really a double-word value. In that case, you can safely replace the value with a REG_DWORD. Don't forget that Windows XP uses the little-endian architecture, though, so it stores double-word values in reverse-byte order. 
  31. 'In other words, you replace the REG_BINARY value 0x04 0x03 0x02 0x01 with the REG_DWORD 0x01020304.
  32.  
  33. Sub OnInit() 
  34. Dim s, i, b
  35. s= RegReadValue(strkey1)
  36. b =Left(s,2) 'get the first byte
  37. s = Mid(s ,3) ' store the rest
  38. i = CLng("&H" & b)
  39. if i And 1 then CheckItem 0, true
  40. 'f i And &H40 then CheckItem 1, true
  41.  
  42. SetItemText 2, RegReadValue(strkey3)
  43.  
  44. End Sub
  45.  
  46. Sub OnApply(x,y)
  47. Dim s, i, b
  48. s= RegReadValue(strkey1)
  49. b =Left(s,2) 'get the first byte
  50. s = Mid(s ,3) ' store the rest
  51. i = CLng("&H" & b)
  52.  
  53. if IsItemChecked(0) then
  54. i = i Or 1
  55.    if IsItemChecked(1) then
  56.     i = i Or &H40
  57.    end if
  58. else
  59. i = i And (NOT &H1)
  60. i = i And (NOT &H40) ' i = i & ~0x40
  61.  
  62. end if
  63.  
  64. s =right(hex(i),2) & s ' right is used to limit it to a byte
  65.  
  66. RegWriteValueB strkey1, s
  67. RegWriteValueD strkey3, Clng(GetItemText(2))
  68.  
  69. NotifySettingChange 0
  70. Restart
  71.  
  72. End Sub
  73.  
  74. Sub OnEvent (x,y)
  75.  
  76.  if IsItemChecked(0)=true then
  77.   EnableItem 1, true
  78.   EnableItem 2, true
  79.  else
  80.   EnableItem 1, false
  81.   EnableItem 2, false
  82. end if
  83. End Sub
  84.